#include <iostream>
using namespace std;

int main() {
    setlocale(LC_ALL, "RU");
    int kol = 0;
    string input;
    int latin = 0;
    int m_len = 0;
    string m_word;
    char lat[] = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
    char end = ' ';
    int three = 0;
    char def = '-';
    string stro = " ";
    string a[1000];
    int kol_def = 0;
    int lat1 = 0;
    int lat_max = 0;
    int siz = -1;
    std::cout << "Введите слова для анализа через пробел: ";
    getline(cin, input);
    int j = 0;
  for (char i:input){

    if (!(i == end)){
        stro += i;
    }
    else{
        lat1 = 0;
        for (char y:stro){
            if (def == y){
                kol_def++;
            }
        }
        a[j] = stro;
        
        kol++;
        j++;
        for (char b:lat){
            for (char c:stro){
                if (lat1 == 0){
                    if (b == c){
                        latin++;
                        lat1 = 1;
                    }
                }
                
            }
        }
        if ((stro.size()/2 <= 3 and lat1 == 1) or (stro.size() <= 3 and lat1 == 0)){
            three++;
        }
        if (lat1 == 1){
            siz = stro.size()/2;
        }
        if (!(siz == -1)){
            if(m_len < siz){
                m_len = stro.size();
                m_word = stro;
            }
        }
        else{
            m_len = stro.size();
            m_word = stro;
        }
        stro =" ";
    }
      
  }

  std::cout << "Кол-во слов: "<< kol+1 << "\nКол-во слов содержащих латинский символ: " << latin << "\nКол-во слов не превышающих 3 символа: " << three << "\nКол-во слов в составе которых имеется дефис: " << kol_def << "\n\nСамое длинное слово: " << m_word << "\nДлина слова: " << m_len;
  return 0;
}
